1. Technical Field
The present invention relates generally to communication system and in particular, to a method of transferring input data packets from an upper layer to a lower layer of a stack of communication protocol layers, the lower layer supporting variable sized packets. The invention also relates to a method of recovering input data packets received from a lower layer in a flow of output data packets.
2. Related Art
Communication systems require both reliable and efficient transmission methods. Generally, the transmission reliability is increased by sending shorter data packets. Actually, data corruption due to transmission errors occurs statistically more often during the transmission of a long packet than during the transmission of a relatively shorter packet. In addition, when data corruption occurs, it is generally easier to detect transmission errors in a shorter packet than in a longer packet. Moreover, it is quicker to retransmit a shorter packet than a longer packet.
Stated otherwise, the transmission of shorter data packets, compared with longer data packets, allows reducing packet error rate, increasing retransmission efficiency and decreasing retransmission delay.
In this context, a segmentation scheme for transforming data packets of a given size into several shorter data segments for data transmission purpose is desirable.
However, a segmentation scheme induces a substantial transmission overhead, which decreases the transmission efficiency. The transmission overhead introduced by segmentation scheme depends on the size of data segments and may comprise two types of overhead, as it is explained below.
Firstly, a signaling overhead corresponds to signaling information added to each data segment during the segmentation scheme, whose function is to allow reassembly of the data segments at the receiver. This signaling overhead is proportional to the number of data segments. As a consequence, it is higher with shorter data segments than with longer data segments.
Secondly, a segment overhead results from transmission of ineffective data, which may be introduced during the segmentation scheme to reach a predetermined segment size value. This segment overhead is higher with longer data segments than with shorter data segments.
Different methods have been disclosed to optimise the segmentation scheme depending on characteristics of medium (reliability, bandwith . . . ) and on requirements of a given application (transfer of voice data, transfer of video data . . . ).
Methods of a first type use segmentation into a fixed size data segment. In general, the fixed size is made dependent on characteristics of the physical layer to provide a compromise between a long size value and a relatively shorter size value. The long size value allows a decrease of signaling overhead. The relatively shorter size value is preferred in order to reduce the segment overhead, to reduce packet error rate, to increase retransmission efficiency and thereby to achieve low transmission delay. Regarding unreliable physical links wherein packet error rate is high, relatively shorter size values are generally preferred, even if the signaling overhead is increased.
Methods of a second type rely on a variable segment size value. As all data segments have different sizes, such methods are based on the assumption that the physical layer is able to synchronize on the beginning of each of the data segments. Generally, the synchronization which is required is difficult to achieve and induces a large overhead at the physical layer.